home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / t_os / kuchy / kuchy.c next >
C/C++ Source or Header  |  1993-07-08  |  2KB  |  83 lines

  1. /*=========================================================================
  2.  
  3.                         GCC PAINT TOOL
  4.                                                 By LUCTFER
  5.  
  6. ===========================================================================*/
  7.  
  8. #pragma on( Pointers_compatible );
  9.  
  10. #include <stdio.h>
  11. #include <stdlib.h>
  12.  
  13. #define    DWORD(x)    *((unsigned int            *)(x))
  14. #define    WORD(x)        *((unsigned short int    *)(x))
  15. #define    BYTE(x)        *((unsigned char        *)(x))
  16.  
  17. void    lineput( char *work )
  18.     {
  19.     char    para[12];
  20.     int        col, ch, x1, y1, x2, y2, flg;
  21.  
  22.     while ( ch != 3 ) {                /*    wh    1s    */
  23.         MOS_rdpos( &ch, &x2, &y2 );
  24.  
  25.         if ( ch == 1 ){                /*    if    1s    */
  26.             if ( flg == 1 ) {        /*    if    2s    */
  27.  
  28.                 EGB_singleLine( work, x1, y1, x2, y2 );
  29.                 x1 = x2 ; y1 = y2 ;
  30.             } else {
  31.  
  32.                 MOS_rdpos( &ch, &x1, &y1 );
  33.                 flg = 1;
  34.             }                        /*    if    2e    */
  35.  
  36.         } else {
  37.             flg = 0;
  38.         }                            /*    if    1e    */
  39.  
  40.     if( ch == 2 ){                    /*    if    3s    */
  41.  
  42.         col++ ;
  43.         EGB_color( work, 0, col%16 );
  44.  
  45.         }                            /*    if    3e    */
  46.     }                                /*    wh    1e    */
  47.  
  48.     return;
  49.  
  50.     }
  51.  
  52. void    set_egb( char *work, char *mwork )
  53.     {
  54. /*    EGB_init( work, 1536 );    */
  55.     EGB_resolution( work, 0, 0x43 );
  56.     EGB_resolution( work, 1, 0x43 );
  57.     EGB_writePage( work, 0 );
  58.     EGB_color( work, 0, 1 );
  59.     EGB_penSize( work, 1 );
  60.     EGB_displayPage( work, 1, 3 );
  61.  
  62.     MOS_start( mwork, 4096 );
  63.     MOS_resolution( 1, 3 );
  64.     MOS_writePage( 1 ); 
  65.     MOS_color( 0, 1 );
  66. /*    MOS_pulse( 10, 10 );*/
  67.     MOS_disp( 1 );
  68.  
  69.     }
  70.  
  71. void    main()
  72.     {
  73.  
  74.     char    work[1535];
  75.     char    mwork[4095];
  76.  
  77.     set_egb( work, mwork );
  78.  
  79.     lineput( work ); 
  80.  
  81.     MOS_end();
  82. }
  83.